package org.nepu.srr.domain.equipmentdata;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.nepu.srr.domain.equipmentdata.converter.CommonInputConverter;
import org.nepu.srr.domain.equipmentdata.converter.CommonInputPlusConverter;
import org.nepu.srr.domain.equipmentdata.vo.CommonInput;
import org.nepu.srr.domain.equipmentdata.vo.CommonInputPlus;

import javax.persistence.Column;
import javax.persistence.Convert;

@Data
@ApiModel(value = "动力及辅助设备证书参数")
public class PowerCertificateParams {

    @ApiModelProperty("主柴油发电机组")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "main_steam_generator_group")
    CommonInput mainSteamGeneratorGroup;

    @ApiModelProperty("应急柴油发电机组")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "emergency_steam_generator_group")
    CommonInput emergencySteamGeneratorGroup;

    @ApiModelProperty("整流及变频电控装置")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "power_control_device")
    CommonInput powerControlDevice;

    @ApiModelProperty("启动空气压缩机")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "start_air_compressor")
    CommonInput startAirCompressor;

    @ApiModelProperty("服务空气压缩机")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "service_air_compressor")
    CommonInput serviceAirCompressor;

    @ApiModelProperty("呼吸器压缩机")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "breathing_air_compressor")
    CommonInput breathingAirCompressor;

    @ApiModelProperty("船用冷藏装置")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "ship_refrigeration_device")
    CommonInput shipRefrigerationDevice;

    @ApiModelProperty("空调系统")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "air_conditioning_system")
    CommonInput airConditioningSystem;

    @ApiModelProperty("泵类（压载泵、主海水泵、污水泵、电潜泵）")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "pump_class")
    CommonInput pumpClass;

    @ApiModelProperty("造水机")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "water_pump")
    CommonInput waterPump;

    @ApiModelProperty("吊车、行吊、电葫芦")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "anchor_chain_row_boat_dugout")
    CommonInput anchorChainRowBoatDugout;

    @ApiModelProperty("各种气动/液压绞车")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "hydraulic_unloader")
    CommonInput hydraulicUnloader;

    @ApiModelProperty("系物器件")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "fastener_part")
    CommonInput fastenerPart;

    @ApiModelProperty("被系物器件")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "fastener_part_attached")
    CommonInput fastenerPartAttached;

    @ApiModelProperty("升降系统（电机、齿轮箱、刹车、齿条、环梁、环梁销、防震胶、液压系统）")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "elevator_system")
    CommonInput elevatorSystem;

    @ApiModelProperty("锁紧装置（齿条、液压系统）")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "fastening_device")
    CommonInput fasteningDevice;

    @ApiModelProperty("直升机甲板")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "airplane_hull")
    CommonInput airplaneHull;

    @ApiModelProperty("飞机加油装置")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "airplane_fuel_system")
    CommonInput airplaneFuelSystem;

    @ApiModelProperty("飞机油罐")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "airplane_oil_tank")
    CommonInput airplaneOilTank;

    @ApiModelProperty("锅炉和空压机安全阀")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "oil_press_safety_valve")
    CommonInput oilPressSafetyValve;

    @ApiModelProperty("仪表")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "instrument")
    CommonInput instrument;

    @ApiModelProperty("叉车")
    @Convert(converter = CommonInputConverter.class)
    @Column(name = "crane")
    CommonInput crane;
}
